Skip to content

fix: hoist icon components, add a11y aria-labels, add QueryError fallback#40

Closed
nightmare0329 wants to merge 1 commit intoentrius:testfrom
nightmare0329:fix/ui-a11y-icons-errors
Closed

fix: hoist icon components, add a11y aria-labels, add QueryError fallback#40
nightmare0329 wants to merge 1 commit intoentrius:testfrom
nightmare0329:fix/ui-a11y-icons-errors

Conversation

@nightmare0329
Copy link
Copy Markdown

Summary

Related Issues

Closes #31, Closes #33, Closes #36

Type of Change

  • Bug fix
  • Refactor

Testing

  • Manually verified icon hoisting removes the component-inside-component anti-pattern
  • All aria-labels verified against the 4 controls described in Icon-only buttons have no accessible name #30
  • QueryError renders correctly for each panel error state with working retry

Checklist

  • Code follows existing style conventions
  • Self-reviewed the diff
  • No documentation changes required

…back

Issue entrius#33 — refactor(OrderbookDepth): hoist BtcIcon, TaoIcon, AssetIcon
to module scope so they are not recreated on every parent render.
Each icon calls useTheme() internally instead of closing over the
parent component's theme variables.

Issue entrius#31 — a11y: add aria-label to 4 icon-only interactive controls:
- Docs link button (aria-label="Documentation")
- Theme toggle button (dynamic: "Switch to dark/light mode")
- Orderbook info button (aria-label="Orderbook depth information")
- EventFeed scroll-to-top button (aria-label="Scroll to top of event feed")

Issue entrius#36 — fix: add QueryError component with retry button and wire it
into all four dashboard panels (StatsPanel, MinerRatesTable,
OrderbookDepth, EventFeed). Panels now render a QueryError with a refetch
button instead of staying on a shimmer skeleton when useApiQuery errors.

Closes entrius#31, entrius#33, entrius#36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant